home *** CD-ROM | disk | FTP | other *** search
/ PCMania 48 / PCMania CD48_1.iso / vreal / vreal.mst < prev    next >
Text File  |  1995-02-06  |  17KB  |  512 lines

  1. '*                       Visual Reality Setup
  2. '**************************************************************************
  3.  
  4. '$DEFINE DEBUG  ''Define for script development/debugging
  5.  
  6. '$INCLUDE 'setupapi.inc'
  7. '$INCLUDE 'msdetect.inc'
  8.  
  9. ''Dialog ID's
  10. CONST WELCOME       = 100
  11. CONST ASKQUIT       = 200
  12. CONST DESTPATH      = 300
  13. CONST EXITFAILURE   = 400
  14. CONST EXITQUIT      = 600
  15. CONST EXITSUCCESS   = 700
  16. CONST OPTIONS       = 800
  17. CONST APPHELP       = 900
  18. CONST CUSTINST      = 6200
  19. CONST BADPATH       = 6400
  20.  
  21. CONST EYESFILES     = 1
  22. CONST TUTORFILES    = 2
  23. CONST PLAYBACKFILES = 3
  24. CONST IMAGEFILES    = 4
  25. CONST MODELFILES    = 5
  26. CONST FONTFILES     = 6
  27. CONST CATAFILES     = 7
  28.  
  29. CONST RLIVEBB        = 6401
  30. CONST VFONTBB        = 6402
  31. CONST VIMAGEBB        = 6403
  32. CONST VMODELBB        = 6404
  33. CONST VCATABB        = 6405
  34. CONST ANIPLAY        = 6406
  35. CONST WELCOMEBB        = 6407
  36. CONST SSCENESBB        = 6408
  37.  
  38. ''Bitmap ID
  39. CONST LOGO = 1
  40.  
  41. GLOBAL DEST$        ''Default destination directory.
  42. GLOBAL DESTEYES$    ''Default destination directory.
  43. GLOBAL DESTIMAGE$   ''Default destination directory.
  44. GLOBAL DESTMODEL$   ''Default destination directory.
  45. GLOBAL DESTFONT$    ''Default destination directory.
  46. GLOBAL DESTCATA$    ''Default destination directory.
  47. GLOBAL WINDIR$      ''Default destination directory.
  48. GLOBAL WINSYSDIR$   ''Default destination directory.
  49. GLOBAL EXECOPT$     ''Option selection from OptFiles1 option dialog.
  50. GLOBAL TUTOROPT$    ''Option selection from OptFiles2 option dialog.
  51. GLOBAL DOEYES$      ''Option selection to install the executable and config files.
  52. GLOBAL DOTUTORIAL$  ''Option selection to install tutorials.
  53. GLOBAL DOPLAYBACK$  ''Option selection to install tutorials.
  54. GLOBAL DOIMAGE$     ''Option selection to install tutorials.
  55. GLOBAL DOMODEL$     ''Option selection to install tutorials.
  56. GLOBAL DOFONT$      ''Option selection to install Visual Font.
  57. GLOBAL DOCATA$      ''Option selection to install tutorials.
  58. GLOBAL CUIDLL$
  59.  
  60. ''Dialog list symbol names
  61. GLOBAL CHECKIN$
  62. GLOBAL CHECKOUT$
  63.  
  64. DECLARE SUB Install
  65. DECLARE SUB Cleanup(path$)
  66. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  67. DECLARE FUNCTION OnWindowsNT LIB "INIUPD.DLL" AS INTEGER
  68. DECLARE FUNCTION VflatdPresent LIB "iniupd.DLL" AS INTEGER
  69. DECLARE FUNCTION FShowWindow LIB "mscuistf.dll" (arg1%) AS INTEGER
  70.  
  71. INIT:
  72.     Tmp% = FShowWindow( HwndFrame )
  73.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  74.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  75.  
  76.     SetBitmap CUIDLL$, LOGO
  77.     SetTitle "Visual Reality Setup"
  78.  
  79.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  80.     IF szInf$ = "" THEN
  81.         szInf$ = GetSymbolValue("STF_CWDDIR") + "SETUP.INF"
  82.     END IF
  83.  
  84.     ReadInfFile szInf$
  85.  
  86.     DEST$ = "C:\VREAL"
  87.  
  88.  
  89. '$IFDEF DEBUG
  90.     i% = SetSizeCheckMode(scmOnIgnore)    '' could use scmOff; def = scmOnFatal
  91.     WinDrive$ = MID$(GetWindowsDir, 1, 1)
  92.     IF IsDriveValid(WinDrive$) = 0 THEN
  93.         i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  94.         GOTO QUIT
  95.     END IF
  96. '$ENDIF ''DEBUG
  97.  
  98.  
  99. WELCOME:
  100.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  101.     IF sz$ = "CONTINUE" THEN
  102.         UIPop 1
  103.     ELSE
  104.         GOSUB ASKQUIT
  105.         GOTO WELCOME
  106.     END IF
  107.  
  108.     w% = GetScreenWidth
  109.     h% = GetScreenHeight
  110.  
  111.     IF OnWindowsNT() THEN
  112.         i% = DoMsgBox("This setup of Visual Reality cannot run on Windows NT.", "Installation Problem", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  113.     ERROR STFERR       
  114.     GOTO QUIT
  115.     END IF
  116.  
  117.     IF w% < 800 THEN
  118.         i% = DoMsgBox("display driver must be running at a minimum 800 x 600 x 256 colors resolution. Run windows setup to change your display driver", "SETUP FATAL ERROR", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  119.         ERROR STFERR
  120.         GOTO QUIT
  121.     ENDIF
  122.     IF h% < 600 THEN
  123.         i% = DoMsgBox("display driver must be running at a minimum 800 x 600 x 256 colors resolution. Run windows setup to change your display driver", "SETUP FATAL ERROR", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  124.         ERROR STFERR
  125.         GOTO QUIT
  126.     ENDIF
  127.  
  128.     i% = Has87MathChip
  129.     IF i% = 0 THEN
  130.         i% = DoMsgBox("Setup could not find a MATH COPROCESSOR", "SETUP FATAL ERROR", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  131.         ERROR STFERR
  132.         GOTO QUIT
  133.     ENDIF
  134.  
  135.  
  136. GETPATH:
  137.     SetSymbolValue "EditTextIn", DEST$
  138.     SetSymbolValue "EditFocus", "END"
  139. GETPATHL1:
  140.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  141.     DEST$ = GetSymbolValue("EditTextOut")
  142.  
  143.     IF sz$ = "CONTINUE" THEN
  144.         IF IsDirWritable(DEST$) = 0 THEN
  145.             GOSUB BADPATH
  146.             GOTO GETPATHL1
  147.         END IF
  148.         UIPop 1
  149.     ELSEIF sz$ = "REACTIVATE" THEN
  150.         GOTO GETPATHL1
  151.     ELSEIF sz$ = "BACK" THEN
  152.         UIPop 1
  153.         GOTO WELCOME
  154.     ELSE
  155.         GOSUB ASKQUIT
  156.         GOTO GETPATH
  157.     END IF
  158.  
  159.     DESTEYES$ =  DEST + "\EYES"
  160.     DESTIMAGE$=  DEST + "\VIMAGE"
  161.     DESTMODEL$=  DEST + "\VMODEL"
  162.     DESTFONT$ =  DEST + "\VFONT"
  163.     DESTCATA$ =  DEST + "\VCATA"
  164.  
  165.     ''CustInst list symbols
  166.     CHECKIN$ = "CheckItemsIn"
  167.     CHECKOUT$ = "CheckItemsOut"
  168.  
  169.     FOR i% = 1 TO 7 STEP 1
  170.         AddListItem CHECKIN$, "ON"
  171.     NEXT i%
  172.  
  173. CUSTINST:
  174.     sz$ = UIStartDlg(CUIDLL$, OPTIONS, "FCheckDlgProc", APPHELP, HELPPROC$)
  175.  
  176.     IF sz$ = "CONTINUE" THEN
  177.         UIPop 1
  178.         GOTO CHECKOPTIONS
  179.     ELSEIF sz$ = "PATH" THEN
  180.         GOTO GETPATH
  181.     ELSEIF sz$ = "CHK1" THEN
  182. '        RecalcOptFiles APPFILES
  183. '        SetDriveStatus
  184.         GOTO CUSTINST
  185.     ELSEIF sz$ = "CHK2" THEN
  186. '        RecalcOptFiles OPTFILES1
  187. '        SetDriveStatus
  188.         GOTO CUSTINST
  189.     ELSEIF sz$ = "CHK3" THEN
  190. '        RecalcOptFiles OPTFILES2
  191. '        SetDriveStatus
  192.         GOTO CUSTINST
  193.     ELSE
  194.         GOSUB ASKQUIT
  195.         GOTO CUSTINST
  196.     END IF
  197.  
  198. CHECKOPTIONS:
  199.     DOEYES$ = "NO"
  200.     DOTUTORIAL$ = "NO"
  201.     DOPLAYBACK$ = "NO"
  202.     DOIMAGE$ = "NO"
  203.     DOMODEL$ = "NO"
  204.     DOFONT$ = "NO"
  205.     DOCATA$ = "NO"
  206.  
  207.  
  208.     op1$ = GetListItem ( CHECKOUT$, EYESFILES)
  209.     IF op1$ = "ON" THEN
  210.         DOEYES$ = "YES"
  211.     ENDIF
  212.     op2$ = GetListItem ( CHECKOUT$, TUTORFILES)
  213.     IF op2$ = "ON" THEN
  214.         DOTUTORIAL$ = "YES"
  215.     ENDIF
  216.     op3$ = GetListItem ( CHECKOUT$, PLAYBACKFILES)
  217.     IF op3$ = "ON" THEN
  218.         DOPLAYBACK$ = "YES"
  219.     ENDIF
  220.     op4$ = GetListItem ( CHECKOUT$, IMAGEFILES)
  221.     IF op4$ = "ON" THEN
  222.         DOIMAGE$ = "YES"
  223.     ENDIF
  224.     op5$ = GetListItem ( CHECKOUT$, MODELFILES)
  225.     IF op5$ = "ON" THEN
  226.         DOMODEL$ = "YES"
  227.     ENDIF
  228.     op6$ = GetListItem ( CHECKOUT$, FONTFILES)
  229.     IF op6$ = "ON" THEN
  230.         DOFONT$ = "YES"
  231.     ENDIF
  232.     op7$ = GetListItem ( CHECKOUT$, CATAFILES)
  233.     IF op7$ = "ON" THEN
  234.         DOCATA$ = "YES"
  235.     ENDIF
  236.  
  237. INSTALLIT:
  238.  
  239.     WINDIR$ = GetWindowsDir()
  240.     WINSYSDIR$ = GetWindowsSysDir()
  241.     IF DoesIniKeyExist(WINDIR$ + "system.ini", "386Enh" , "PageOverCommit") = 0 THEN
  242.         CreateSysIniKeyValue WINDIR$ + "system.ini" , "386Enh" , "PageOverCommit" , "20" , cmoOverwrite
  243.     ENDIF
  244.     IF DoesIniKeyExist(WINDIR$ + "system.ini", "386Enh" , "EMMExclude") = 0 THEN
  245.         CreateSysIniKeyValue WINDIR$ + "system.ini" , "386Enh" , "EMMExclude" , "a000-ffff" , cmoOverwrite
  246.     ENDIF
  247.  
  248.     Install
  249.  
  250.  
  251. QUIT:
  252.     ON ERROR GOTO ERRQUIT
  253.  
  254.     IF ERR = 0 THEN
  255.         dlg% = EXITSUCCESS
  256.     ELSEIF ERR = STFQUIT THEN
  257.         dlg% = EXITQUIT
  258.     ELSE
  259.         dlg% = EXITFAILURE
  260.     END IF
  261. QUITL1:
  262.  
  263.     Cleanup(DEST$)
  264.  
  265.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  266.     IF sz$ = "REACTIVATE" THEN
  267.         GOTO QUITL1
  268.     END IF
  269.     UIPop 1
  270.  
  271.     END
  272.  
  273. ERRQUIT:
  274.     i% = DoMsgBox("Setup sources were corrupted, call 818 883-7900!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  275.     END
  276.  
  277.  
  278.  
  279. BADPATH:
  280.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  281.     IF sz$ = "REACTIVATE" THEN
  282.         GOTO BADPATH
  283.     END IF
  284.     UIPop 1
  285.     RETURN
  286.  
  287.  
  288.  
  289. ASKQUIT:
  290.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  291.  
  292.     IF sz$ = "EXIT" THEN
  293.         UIPopAll
  294.         ERROR STFQUIT
  295.     ELSEIF sz$ = "REACTIVATE" THEN
  296.         GOTO ASKQUIT
  297.     ELSE
  298.         UIPop 1
  299.     END IF
  300.     RETURN
  301.  
  302.  
  303.  
  304. '**
  305. '** Purpose:
  306. '**     Builds the copy list and performs all installation operations.
  307. '** Arguments:
  308. '**     none.
  309. '** Returns:
  310. '**     none.
  311. '*************************************************************************
  312. SUB Install STATIC
  313.  
  314.     SrcDir$ = GetSymbolValue("STF_SRCDIR") + "VREAL"
  315.     CreateDir DEST$, cmoNone
  316.     IF DOEYES$ = "YES" THEN
  317.         CreateDir DESTEYES$, cmoNone
  318.         CreateDir DESTEYES$ + "\CONFIG", cmoNone
  319.     ENDIF
  320.     IF DOTUTORIAL$ = "YES" THEN
  321.         CreateDir DESTEYES$, cmoNone
  322.         CreateDir DESTEYES$ + "\TUTOR", cmoNone
  323.         CreateDir DESTEYES$ + "\TUTOR\TUTOR1", cmoNone
  324.     CreateDir DESTEYES$ + "\TUTOR\TUTOR3", cmoNone
  325.     CreateDir DESTEYES$ + "\TUTOR\TUTOR4", cmoNone
  326.     CreateDir DESTEYES$ + "\TUTOR\TUTOR5", cmoNone
  327.     CreateDir DESTEYES$ + "\TUTOR\TUTOR6", cmoNone
  328.     CreateDir DESTEYES$ + "\TUTOR\TUTOR7", cmoNone
  329.     CreateDir DESTEYES$ + "\TUTOR\TUTOR8", cmoNone
  330.     CreateDir DESTEYES$ + "\TUTOR\TUTOR9", cmoNone
  331.     CreateDir DESTEYES$ + "\TUTOR\TUTOR10", cmoNone
  332.     CreateDir DESTEYES$ + "\TUTOR\TUTOR11", cmoNone
  333.     CreateDir DESTEYES$ + "\TUTOR\TUTOR12", cmoNone
  334.     ENDIF
  335.     IF DOPLAYBACK$ = "YES" THEN
  336.         CreateDir DESTEYES$, cmoNone
  337.         CreateDir DESTEYES$ + "\PLAYBACK", cmoNone
  338.     ENDIF
  339.     IF DOIMAGE$ = "YES" THEN
  340.         CreateDir DEST$ + "\VIMAGE", cmoNone
  341.         CreateDir DEST$ + "\VCATA", cmoNone
  342.     ENDIF
  343.     IF DOMODEL$ = "YES" THEN
  344.         CreateDir DEST$ + "\VMODEL", cmoNone
  345.     ENDIF
  346.     IF DOFONT$ = "YES" THEN
  347.         CreateDir DEST$ + "\VFONT", cmoNone
  348.     ENDIF
  349.     IF DOCATA$ = "YES" THEN
  350.         CreateDir DEST$ + "\VCATA", cmoNone
  351.     ENDIF
  352.  
  353.     AddToBillboardList CUIDLL$, WELCOMEBB, "WelcomeDlgProc", 5
  354.     AddToBillboardList CUIDLL$, RLIVEBB, "WelcomeDlgProc", 12
  355.     AddToBillboardList CUIDLL$, VFONTBB, "WelcomeDlgProc", 12
  356.     AddToBillboardList CUIDLL$, VIMAGEBB,"WelcomeDlgProc", 12
  357.     AddToBillboardList CUIDLL$, VMODELBB,"WelcomeDlgProc", 12
  358.     AddToBillboardList CUIDLL$, VCATABB, "WelcomeDlgProc", 12
  359.     AddToBillboardList CUIDLL$, ANIPLAY, "WelcomeDlgProc", 12
  360.     AddToBillboardList CUIDLL$, SSCENESBB,"WelcomeDlgProc", 12
  361.  
  362.     IF DOEYES$ = "YES" THEN
  363.         AddSectionFilesToCopyList "EYES", SrcDir$, DESTEYES$
  364.         AddSectionFilesToCopyList "CONFIG", SrcDir$, DESTEYES$ + "\CONFIG"
  365.         AddSectionFilesToCopyList "VFW Runtime", SrcDir$, WINSYSDIR$
  366.         AddSectionFilesToCopyList "OLE2", SrcDir$, WINSYSDIR$
  367.         AddSectionFilesToCopyList "ACM Drivers", SrcDir$, WINSYSDIR$
  368.         AddSectionFilesToCopyList "AVI Codecs", SrcDir$, WINSYSDIR$
  369.     ENDIF
  370.  
  371.  
  372.     IF DOTUTORIAL$ = "YES" THEN
  373.         AddSectionFilesToCopyList "TUTOR", SrcDir$, DESTEYES$ + "\TUTOR"
  374.         AddSectionFilesToCopyList "TUTOR0", SrcDir$, DESTEYES$ + "\TUTOR"
  375.         AddSectionFilesToCopyList "TUTOR1", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR1"
  376.         AddSectionFilesToCopyList "TUTOR3", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR3"
  377.         AddSectionFilesToCopyList "TUTOR4", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR4"
  378.         AddSectionFilesToCopyList "TUTOR5", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR5"
  379.         AddSectionFilesToCopyList "TUTOR6", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR6"
  380.         AddSectionFilesToCopyList "TUTOR7", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR7"
  381.         AddSectionFilesToCopyList "TUTOR9", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR9"
  382.         AddSectionFilesToCopyList "TUTOR8", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR8"
  383.         AddSectionFilesToCopyList "TUTOR10", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR10"
  384.         AddSectionFilesToCopyList "TUTOR11", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR11"
  385.         AddSectionFilesToCopyList "TUTOR12", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR12"
  386.     ENDIF
  387.  
  388.     IF DOIMAGE$ = "YES" THEN
  389.         AddSectionFilesToCopyList "VIMAGE", SrcDir$, DESTIMAGE$
  390.     ENDIF
  391.  
  392.     IF DOMODEL$ = "YES" THEN
  393.         AddSectionFilesToCopyList "VMODEL", SrcDir$, DESTMODEL$
  394.     ENDIF
  395.  
  396.     IF DOPLAYBACK$ = "YES" THEN
  397.         AddSectionFilesToCopyList "MPlayer", SrcDir$, WinDir$
  398.         AddSectionFilesToCopyList "VPLAYER", SrcDir$, DESTEYES$ + "\PLAYBACK"
  399.         AddSectionFilesToCopyList "Animator", SrcDir$, DESTEYES$ + "\PLAYBACK"
  400.     ENDIF
  401.  
  402.     IF DOCATA$ = "YES" THEN
  403.         AddSectionFilesToCopyList "VC", SrcDir$, DESTCATA$
  404.     ENDIF
  405.  
  406.     IF DOFONT$ = "YES" THEN
  407.         AddSectionFilesToCopyList "VFONT", SrcDir$, DESTFONT$
  408.     ENDIF
  409.  
  410.     CopyFilesInCopyList
  411.  
  412.     IF DOEYES$ = "YES" THEN
  413.     SetRestartDir WINDIR$
  414.     
  415.         CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "VIDC.MSVC", "msvidc.drv", cmoOverwrite
  416.  
  417.     IF VflatdPresent() = 0 THEN
  418.               CreateSysIniKeyValue WINDIR$ + "system.ini", "386Enh", "device", "dva.386", cmoOverwrite
  419.     END IF
  420.  
  421.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "VIDC.CVID", "iccvid.drv", cmoOverwrite
  422.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "VIDC.IV31", "indeov.drv", cmoOverwrite
  423.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "VIDC.MRLE", "MSRLE.drv", cmoOverwrite
  424.  
  425.     I% = DoesIniKeyExist (WINDIR$ + "system.ini", "Drivers", "VIDC.RT21")
  426.     IF I% = 0  THEN
  427.               CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "VIDC.RT21", "indeov.drv", cmoOverwrite
  428.     END IF
  429.  
  430.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "VIDC.YVU9", "indeov.drv", cmoOverwrite
  431.     CreateIniKeyValue WINDIR$ + "WIN.INI", "mci extensions", "avi", "AVIVideo", cmoOverwrite
  432.     CreateIniKeyValue WINDIR$ + "system.ini", "mci", "AVIVideo", "mciavi.drv", cmoOverwrite
  433.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "WaveMapper", "msacm.drv", cmoOverwrite
  434.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "MSACM.msadpcm", "msadpcm.acm", cmoOverwrite
  435.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "MSACM.imaadpcm", "imaadpcm.acm", cmoOverwrite
  436.     CreateIniKeyValue WINDIR$ + "control.ini", "drivers.desc", "msacm.drv", "Microsoft Sound Mapper V2.00", cmoOverwrite
  437.     CreateIniKeyValue WINDIR$ + "control.ini", "drivers.desc", "msadpcm.acm", "Microsoft ADPCM Codec V2.00", cmoOverwrite
  438.     CreateIniKeyValue WINDIR$ + "control.ini", "drivers.desc", "imaadpcm.acm", "Microsoft IMA ADPCM Codec V2.00", cmoOverwrite
  439.     Run ("regedit.exe /s " + MakePath(WINDIR$, "mplayer.reg"))
  440.     Run ("regedit.exe /s " + MakePath(WinSysDir$, "OLE2.reg"))
  441.     Run ("regedit.exe /s " + MakePath(WinSysDir$, "cleanup.reg"))
  442.     ENDIF
  443.  
  444.     CreateProgmanGroup "Visual Reality", "", cmoNone
  445.     ShowProgmanGroup  "Visual Reality", 1, cmoNone
  446.     IF DOEYES$ = "YES" THEN
  447.         CreateProgmanItem "Visual Reality", "Renderize Live", DESTEYES$ + "\eyes.exe ", "", cmoOverwrite
  448.     ENDIF
  449.     IF DOMODEL$ = "YES" THEN
  450.         CreateProgmanItem "Visual Reality", "Visual Model", DESTMODEL$ + "\vmodel.exe ", "", cmoOverwrite
  451.     ENDIF
  452.     IF DOIMAGE$ = "YES" THEN
  453.         CreateProgmanItem "Visual Reality", "Visual Image", DESTIMAGE$ + "\vimage.exe ", "", cmoOverwrite
  454.     ENDIF
  455.     IF DOFONT$ = "YES" THEN
  456.         CreateProgmanItem "Visual Reality", "Visual Font", DESTFONT$ + "\vfont.exe ", "", cmoOverwrite
  457.     ENDIF
  458.     IF DOCATA$ = "YES" THEN
  459.         CreateProgmanItem "Visual Reality", "Visual Catalogue", DESTCATA$ + "\vc.exe ", "", cmoOverwrite
  460.     ENDIF
  461.     IF DOPLAYBACK$ = "YES" THEN
  462.         CreateProgmanItem "Visual Reality", "Visual Player", DESTEYES$ + "\playback\vplayer.exe ", "", cmoOverwrite
  463.         CreateProgmanItem "Visual Reality", "Animator", DESTEYES$ + "\playback\aawin.exe ", "", cmoOverwrite
  464.         CreateProgmanItem "Visual Reality", "Media Player", WINDIR + "mplayer.exe ", "", cmoOverwrite
  465.     ENDIF
  466.  
  467. END SUB
  468.  
  469.  
  470.  
  471. '**
  472. '** Purpose:
  473. '**     Appends a file name to the end of a directory path,
  474. '**     inserting a backslash character as needed.
  475. '** Arguments:
  476. '**     szDir$  - full directory path (with optional ending "\")
  477. '**     szFile$ - filename to append to directory
  478. '** Returns:
  479. '**     Resulting fully qualified path name.
  480. '*************************************************************************
  481. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  482.     IF szDir$ = "" THEN
  483.         MakePath = szFile$
  484.     ELSEIF szFile$ = "" THEN
  485.         MakePath = szDir$
  486.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  487.         MakePath = szDir$ + szFile$
  488.     ELSE
  489.         MakePath = szDir$ + "\" + szFile$
  490.     END IF
  491. END FUNCTION
  492.  
  493.  
  494. SUB Cleanup (dest$) STATIC
  495.     RemoveFile dest$ + "\vreal.mst",    cmoNone
  496.     RemoveFile dest$ + "\setup.inf",    cmoNone
  497.     RemoveFile dest$ + "\setup.lst",    cmoNone
  498.     RemoveFile dest$ + "\setup.exe",    cmoNone
  499.     RemoveFile dest$ + "\setupapi.inc", cmoNone
  500.     RemoveFile dest$ + "\msdetect.inc", cmoNone
  501.     RemoveFile dest$ + "\mscomstf.dll", cmoNone
  502.     RemoveFile dest$ + "\msinsstf.dll", cmoNone
  503.     RemoveFile dest$ + "\msuilstf.dll", cmoNone
  504.     RemoveFile dest$ + "\msshlstf.dll", cmoNone
  505.     RemoveFile dest$ + "\mscuistf.dll", cmoNone
  506.     RemoveFile dest$ + "\msdetstf.dll", cmoNone
  507.     RemoveFile dest$ + "\iniupd.dll",    cmoNone
  508.     RemoveFile dest$ + "\_mstest.exe",  cmoNone
  509.     RemoveFile dest$ + "\_mssetup.exe", cmoNone
  510. END SUB
  511.  
  512.